.\" Copyright 2002 Walter Harms (walter.harms@informatik.uni-oldenburg.de)
.\" and Copyright 2008, Linux Foundation, written by Michael Kerrisk
.\"     <mtk.manpages@gmail.com>
.\"
.\" %%%LICENSE_START(GPL_NOVERSION_ONELINE)
.\" Distributed under GPL
.\" %%%LICENSE_END
.\"
.TH FMIN 3 2021-03-22 "" "Linux Programmer's Manual"
.SH NAME
fmin, fminf, fminl \- determine minimum of two floating-point numbers
.SH SYNOPSIS
.nf
.B #include <math.h>
.PP
.BI "double fmin(double " x ", double " y );
.BI "float fminf(float " x ", float " y );
.BI "long double fminl(long double " x ", long double " y );
.fi
.PP
Link with \fI\-lm\fP.
.PP
.RS -4
Feature Test Macro Requirements for glibc (see
.BR feature_test_macros (7)):
.RE
.PP
.BR fmin (),
.BR fminf (),
.BR fminl ():
.nf
    _ISOC99_SOURCE || _POSIX_C_SOURCE >= 200112L
.fi
.SH DESCRIPTION
These functions return the lesser value of
.I x
and
.IR y .
.SH RETURN VALUE
These functions return the minimum of
.I x
and
.IR y .
.PP
If one argument is a NaN, the other argument is returned.
.PP
If both arguments are NaN, a NaN is returned.
.SH ERRORS
No errors occur.
.SH VERSIONS
These functions first appeared in glibc in version 2.1.
.SH ATTRIBUTES
For an explanation of the terms used in this section, see
.BR attributes (7).
.ad l
.nh
.TS
allbox;
lbx lb lb
l l l.
Interface	Attribute	Value
T{
.BR fmin (),
.BR fminf (),
.BR fminl ()
T}	Thread safety	MT-Safe
.TE
.hy
.ad
.sp 1
.SH CONFORMING TO
C99, POSIX.1-2001, POSIX.1-2008.
.SH SEE ALSO
.BR fdim (3),
.BR fmax (3)
.SH COLOPHON
This page is part of release 5.13 of the Linux
.I man-pages
project.
A description of the project,
information about reporting bugs,
and the latest version of this page,
can be found at
\%https://www.kernel.org/doc/man\-pages/.
